package com.ruoyi.project.system.domain;

import io.swagger.annotations.ApiModelProperty;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.framework.web.domain.BaseEntity;

import java.util.ArrayList;
import java.util.List;

/**
 * 【请填写功能名称】对象 sys_area
 *
 * @author theme
 * @date 2020-06-24
 */
public class SysArea extends BaseEntity {
    private static final long serialVersionUID = 1L;

    /**
     * 区域主键
     */
    private Long areaId;

    /**
     * 区域名称
     */
    @ApiModelProperty(name = "区域名称")
    private String name;

    /**
     * 区域上级标识
     */
    @ApiModelProperty(name = "区域上级标识")
    private Long pid;

    /**
     * 地名简称
     */
    @ApiModelProperty(name = "地名简称")
    private String sname;

    /**
     * 区域等级
     */
    @ApiModelProperty(name = "区域等级")
    private Long level;

    /**
     * 区域编码
     */
    @ApiModelProperty(name = "区域编码")
    private String citycode;

    /**
     * 邮政编码
     */
    @ApiModelProperty(name = "邮政编码")
    private String yzcode;

    /**
     * 组合名称
     */
    @ApiModelProperty(name = "组合名称")
    private String mername;

    /**
     * $column.columnComment
     */
    @ApiModelProperty(name = "组合名称")
    private Long lng;

    /**
     * $column.columnComment
     */
    @ApiModelProperty(name = "组合名称")
    private Long lat;

    /**
     * $column.columnComment
     */
    @ApiModelProperty(name = "组合名称")
    private String pinyin;

    /**
     * 排序
     */
    @ApiModelProperty(name = "排序")
    private Integer orderNum;

    private List<SysArea> children = new ArrayList<SysArea>();

    public List<SysArea> getChildren() {
        return children;
    }

    public void setChildren(List<SysArea> children) {
        this.children = children;
    }

    public void setAreaId(Long areaId) {
        this.areaId = areaId;
    }

    public Long getAreaId() {
        return areaId;
    }

    public void setName(String name) {
        this.name = name;
    }

    public String getName() {
        return name;
    }

    public void setPid(Long pid) {
        this.pid = pid;
    }

    public Long getPid() {
        return pid;
    }

    public void setSname(String sname) {
        this.sname = sname;
    }

    public String getSname() {
        return sname;
    }

    public void setLevel(Long level) {
        this.level = level;
    }

    public Long getLevel() {
        return level;
    }

    public void setCitycode(String citycode) {
        this.citycode = citycode;
    }

    public String getCitycode() {
        return citycode;
    }

    public void setYzcode(String yzcode) {
        this.yzcode = yzcode;
    }

    public String getYzcode() {
        return yzcode;
    }

    public void setMername(String mername) {
        this.mername = mername;
    }

    public String getMername() {
        return mername;
    }

    public void setLng(Long lng) {
        this.lng = lng;
    }

    public Long getLng() {
        return lng;
    }

    public void setLat(Long lat) {
        this.lat = lat;
    }

    public Long getLat() {
        return lat;
    }

    public void setPinyin(String pinyin) {
        this.pinyin = pinyin;
    }

    public String getPinyin() {
        return pinyin;
    }

    public void setOrderNum(Integer orderNum) {
        this.orderNum = orderNum;
    }

    public Integer getOrderNum() {
        return orderNum;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this, ToStringStyle.MULTI_LINE_STYLE)
                .append("areaId", getAreaId())
                .append("name", getName())
                .append("pid", getPid())
                .append("sname", getSname())
                .append("level", getLevel())
                .append("citycode", getCitycode())
                .append("yzcode", getYzcode())
                .append("mername", getMername())
                .append("lng", getLng())
                .append("lat", getLat())
                .append("pinyin", getPinyin())
                .append("orderNum", getOrderNum())
                .toString();
    }
}
